The complexity of a general purpose database system combined with the complexity of a general purpose operating system with which the database system interacts on a general purpose computer is typically sufficient to require employment of a full-time database administrator (DBA). It is the responsibility of the DBA to grapple with the complexity of the database system, the operating system, and the interactions between them, so that the other database users can take advantage of the database system without being exposed to underlying complexity. Unfortunately, employing one or more full-time DBAs in an information services (IS) department makes ownership of a useful database system an expensive option that may be outside the means of the small to medium sized enterprise.
Some of the most challenging tasks related to maintaining a database system include the initial installation and configuration of database applications that use the database system. A human administrator must set aside the computational resources to install and run the application. During installation, the administrator is confronted with several choices for configuring the application to run on the system. These choices may be required in a command line input, or may be presented to the administrator as prompts on pages of an installation wizard. For example, the administrator is prompted to set a value for the configuration parameter specifying the shared global area of memory for the device on which the application is being installed. Often the human administrator does not have the experience or understanding to properly set values for such parameters. Human errors are more likely the less often the database administrator configures a particular application for a device on the network. Even in a large enterprise with a dedicated database administrator, the administrator may have relatively few opportunities to install a particular application and thus be prone to making errors. In a small to medium sized enterprise, the opportunities to install a particular application are even more rare, and the propensity for errors even greater.
It has been observed that a large portion of failures in database systems and database applications are due to a poor choice of values for configuration parameters set when a database application is installed. Removing the responsibility of setting configuration parameters from a human user thereby increases both the simplicity and the reliability of operating a database application. However, conventional techniques still require a human administrator to provide configuration parameters' values when installing a database application.
Based on the foregoing, it is clearly desirable to provide a computer system that employs features that reduce the cost of maintaining the hardware and software of the database system on a network. It is further desirable to decrease the complexity of computer systems, and to provide management techniques that allow companies to reduce the size and cost of their in-house information services (IS) departments.